/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.itschapala.com.dsw2.Bl;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.itschapala.com.dsw2.Dao.ArticuloDaoLocal;
import mx.itschapala.com.dsw2.enumeracion.EstadoServicio;
import mx.itschapala.com.dsw2.modelo.Articulo;

/**
 *
 * @author z
 */
@Stateless
public class ArticuloBl implements ArticuloBlLocal {
    @EJB
    private ArticuloDaoLocal articuloDao;

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")

    @Override
    public EstadoServicio register(Articulo item) {
        if(articuloDao.findDuplicity(item)){
           return EstadoServicio.INCOMPLETE;
           
          } else{
          articuloDao.create(item);
          return EstadoServicio.COMPLETE;
       }
    }

    @Override
    public EstadoServicio modify(Articulo item) {
        if(item.getIdArticulo()== null ||  articuloDao.find(item.getIdArticulo())==null){
           return EstadoServicio.INCOMPLETE;
           
          } else{
          articuloDao.find(item);
          return EstadoServicio.COMPLETE;
    }
    }

    @Override
    public EstadoServicio delete(Articulo item) {
        if(item.getIdArticulo()== null ||  articuloDao.find(item.getIdArticulo())==null){
           return EstadoServicio.INCOMPLETE;
           
          } else{
          articuloDao.remove(item);
          return EstadoServicio.COMPLETE;
    }
    }

    @Override
    public Articulo findById(Integer id) {
        return articuloDao.find(id);
    }

    @Override
    public List<Articulo> getAll() {
        return articuloDao.findAll();
    }

}
